package com.kurtphpr.sistema.teste;

import com.kurtphpr.sistema.produto.Produto;
import com.kurtphpr.sistema.produto.ProdutoRN;
import com.kurtphpr.sistema.util.HibernateUtil;
import java.util.Date;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.junit.AfterClass;
import static org.junit.Assert.assertEquals;
import org.junit.BeforeClass;
import org.junit.Test;

public class ProdutoTestMVC {

    private static Session sessao;
    private static Transaction transacao;

    @BeforeClass
    public static void abreConexao() {
        sessao = HibernateUtil.getSession().getCurrentSession();
        transacao = sessao.beginTransaction();
    }

    @AfterClass
    public static void fechaConexao() {
        try {
            transacao.commit();
        } catch (Throwable e) {
            System.out.println("deu problema no commit : " + e.getMessage());
        } finally {
            try {
                if (sessao.isOpen()) {
                    sessao.close();
                }
            } catch (Exception e2) {
                System.out.println("Deu erro no fechamento da sess�o!"
                        + e2.getMessage());
            }

        }

    }

    @Test
    public void salvarTest() {

        Produto p1 = new Produto("lote", "Caderno", new Date(), 50, 7.0f);

        ProdutoRN produtoRN = new ProdutoRN();

        produtoRN.salvar(p1);

        assertEquals(true, true);
    }

    @Test
    public void pesquisarTest() {

        Produto p1 = new Produto("lote", "Caderno", new Date(), 50, 7.0f);

        ProdutoRN produtoRN = new ProdutoRN();

        produtoRN.pesquisar(p1);

        assertEquals(true, true);

    }
}
